As an entity to perform read of data, there is, for example, a DB management system (DBMS). The DBMS which performs a series of processing and management relating to DBs has been an important entity.
One of the features of the DBMS is to handle DBs which include a large amount of data. Therefore, a computer system where the DBMS runs comprises, generally, a computer which executes the DBMS and a high-capacity storage apparatus coupled to the computer, and the storage apparatus stores data of the DB. The storage apparatus comprises a plurality of storage devices (for example, HDDs (Hard Disk Drives) or SSDs (Solid State Devices) and the DB is stored in those storage devices. Since data is stored in the storage device in the storage apparatus, an access to the storage device is necessarily made when the DBMS performs the processing relating to the DB. Especially, with respect to a very large scale DB of a petabyte class, it requires tremendous amount of time for the processing to find out a certain specific data from among a large amount of data of the DB.
Therefore, as a technology to accelerate a search processing to find out a specific data from among a large amount of data, the technology disclosed in PTL 1 is known. The technology disclosed in PTL 1 is the technology which multiplexes a read request of data by dynamically creating a task at each time of reading the data and executing the task in parallel. With respect to the DBMS using this technology, the search performance can be improved compared to a DBMS which sequentially executes tasks in accordance with the order of the creation of the tasks.
In addition, PTL 2 discloses a prefetch processing of the storage apparatus which comprises a cache memory. Specifically, the storage apparatus receives a plurality of read requests and determines whether or not those read requests are the read of data of consecutive addresses (sequential read) or not (read classification determination). In a case where the storage apparatus has determined that the read request is sequential read, the storage apparatus reads the data of the forward address of the address designated by the received read request into the cache memory in advance. Thereby, it becomes possible to achieve the improvement on the response performance (shortening of read time) to a read request.